package com.qf.microuser.user.service;

import com.qf.common.core.entity.User;
import com.qf.common.neo4j.node.UserNode;
import com.qf.microuser.user.param.LoginParam;
import com.qf.microuser.user.param.RegisterParam;
import com.qf.microuser.user.vo.UserInfoVO;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface UserService {

    // 注册
    void register(RegisterParam param);

    // 登录
    String login(LoginParam loginParam);

    // 获取用户信息
    UserInfoVO getUserInfo(Integer uid);

    // 获取所有父级用户
    List<User> findAllParentUsers(Integer userId);

    // 更新用户信息
    boolean updateUserInfoById(User user);

    // 查询当前用户下的邀请关系
    UserNode getUserNodeinvite(Integer userId);

    // 发送验证码
    void getPhoneVerifyCode(String phone);

    // 使用Minio上传头像
    String uploadAvatar(MultipartFile file);
}
